package com.jz.community.moduleshoppingguide.neighbor.model;

import com.jz.community.basecomm.bean.BaseResponseInfo;
import com.jz.community.basecomm.net.rxandroid.OnLoadListener;
import com.jz.community.moduleshoppingguide.neighbor.bean.BlogsListBean;
import com.jz.community.moduleshoppingguide.neighbor.bean.CircleMessageBean;
import com.jz.community.moduleshoppingguide.neighbor.bean.CirclePersonsBean;
import com.jz.community.moduleshoppingguide.neighbor.bean.CircleUserInfoBean;
import com.jz.community.moduleshoppingguide.neighbor.bean.NearCircleListBean;
import com.jz.community.moduleshoppingguide.neighbor.bean.PublishTypeBean;
import com.jz.community.moduleshoppingguide.neighbor.bean.UploadImagesBean;

import java.io.File;
import java.util.ArrayList;

public interface NeighborModel {
    //圈子信息
    void initUserNeighbor(OnLoadListener<CircleMessageBean> onLoadListener);

    //圈子中个人信息
    void initUserInfo(String userId, OnLoadListener<CircleUserInfoBean> onLoadListener);

    //圈子状态
    void circleDynamic(String circle_id, int page, int size, OnLoadListener<BlogsListBean> onLoadListener);

    void putFavorite(String blog_id, OnLoadListener<BlogsListBean.EmbeddedBean.ContentBean.FavoriteBean> onLoadListener);


    void initNeighborMsg(String circleId, String lat, String lon, OnLoadListener<CircleMessageBean> onLoadListener);

    void addNeighbor(String circleId, OnLoadListener<BaseResponseInfo> onLoadListener);

    void quitNeighbor(String circleId, OnLoadListener<BaseResponseInfo> onLoadListener);

    void initNearNeighbor(String lat, String lon, int page, int size, OnLoadListener<NearCircleListBean> onLoadListener);

    void initPersons(String circleId, int page, int size, OnLoadListener<CirclePersonsBean> onLoadListener);

    void initTips(OnLoadListener<PublishTypeBean> onLoadListener);

    void uploadImages(ArrayList<File> files, OnLoadListener<UploadImagesBean> onLoadListener);

    void publishMessage(String image_up, String content, String tip, OnLoadListener<BaseResponseInfo> onLoadListener);
}
